function Plot()
{

	this.plot;
	this.plot_options={
			// Turns on animatino for all series in this plot.
	        animate: true,
	        // Will animate plot on calls to plot1.replot({resetAxes:true})
	        animateReplot: true,
			title:'',
			axes: {
		        // options for each axis are specified in seperate option objects.
		        xaxis: {
		          label: "Time (second)",
		          // Turn off "padding".  This will allow data point to lie on the
		          // edges of the grid.  Default padding is 1.2 and will keep all
		          // points inside the bounds of the grid.
		          min: 0,
		          pad : 1,
		          labelRenderer: jQuery.jqplot.CanvasAxisLabelRenderer	           
		        },
		        yaxis: {
		          label: "Speed (Mo/s)",
		          min: 0,
		          labelRenderer: jQuery.jqplot.CanvasAxisLabelRenderer
		          
		        }
			},
			highlighter: {
		        show: true,
		        sizeAdjust: 7.5,
		        tooltipAxes: 'yx',
		        formatString:'<table class="jqplot-highlighter"> \
		        <tr><td>Speed:</td><td>%s Mo/s</td></tr> \
		        <tr><td>Duration:</td><td>%s seconds</td></tr> \
		        </table>'
		      },
		      cursor: {
		        show: false
		      },
			legend: {
		        show: false,
		        location: 'ne',     // compass direction, nw, n, ne, e, se, s, sw, w.
		        xoffset: 12,        // pixel offset of the legend box from the x (or x2) axis.
		        yoffset: 12,        // pixel offset of the legend box from the y (or y2) axis.
		    },	    
		    seriesDefaults: {	    	
	            rendererOptions: {
	            	smooth: true,
	                animation: {
	                    show: true
	                }
	            },
	            pointLabels: {show: true}	    	
		    },
			series:[{label: "data.title"}]
		};
	
	/*
	 * Redraw graph
	 * bAnimate: set is animate the graph. Default: true.
	 */
	this.redraw = function(plot_array, nodeChart, chartTitle, bAnimate)
	{
		bAnimate = typeof bAnimate !== 'undefined' ? bAnimate : true;
		this.plot_options.animate = bAnimate;
		
		if(this.plot)
		{
			this.plot.destroy;
		}
		
		if(typeof plot_array != "undefined" && plot_array.length>0)
		{
		  this.plot_options.title=chartTitle;
		  this.plot = jQuery.jqplot(nodeChart, plot_array, this.plot_options);
		  this.plot.resetAxesScale();
		  this.plot.replot();
		}
	};
	
	this.clear = function()
	{
		this.redraw([]);
	};
}